1. Field of the Invention
Embodiments of the present invention relate to a Forward Error Correction (FEC) encoding/decoding method of a variable length-packet using a three-dimensional (3D) storage apparatus, and more particularly, to a transmission/reception method of a variable length packet based on an FEC coding scheme that may generate a parity packet for a variable-length packet without performing a padding to enable a restoration of a dropped packet, and to enable a transmission unit to quickly transmitting a data packet.
2. Description of the Related Art
A digital communication system may use an Automatic Repeat Request (ARQ) scheme or a Forward Error Correction (FEC) scheme as a method of enabling a transmission unit to control noise or errors generated in a channel while transmitting data.
The ARQ scheme may be performed by analyzing whether an error exists in a received data block and by requesting a re-transmission of a block having the error, and may not be suitable for a system where many errors occur while requesting a reduction in a delay.
The FEC scheme may enable a reception unit to detect and restore an error without performing a re-transmission even though the error occurs, by further transmitting side data when transmitting data through a channel. As examples of the FEC scheme, a Hamming scheme, a Bose, Chaudhuri, and Hocquengham (BCH) scheme, a Reed Solomon (RS) code scheme, and the like may be given. The RS code scheme may enable detection and correction of an error in a byte unit.
In “an RTP Payload Format for Generic Forward Error Correction” (Internet Engineering Task Force (IETF) Request For Comment Document (RFC) 2733, December 1999) suggested by J. Rosenberg et al., and adopted as an IETE standard, an exclusive logical sum (XOR) may be used. In the exclusive-OR, a single parity packet may be transmitted to a set of a single packet through a separate stream. When the single packet is dropped in a corresponding set, a reception unit may restore the dropped packet. To have compatibility with a host where the FEC scheme is not implemented, the parity packet may have a unique Real Time Processing (RTP) payload type value. A host that is not aware of the RTP payload type value may advance a further process while discarding the received parity packet. To discard a packet having the payload type value which the host is not aware of may be based on “RTP: a Transport Protocol for Real-Time Applications” (IETF RFC 1889, January 1996) of H. Schulzrine, that is, a previous IETF document.
Also, in “an Improved UDP Protocol for Video Transmission Over Internet-to Wireless Networks” (IEEE Tr. On Multimedia, pp 356-365, September 2001) of H. Zheng et al., and “an Adaptive Redundancy Control Method for Erasure-Code Based Real-Time Data Transmission Over the Internet” (IEEE Tr. On Multimedia, pp 366-374, September 2001) of S.-W. Yuk et al., a shortened RS code may be used for restoration of an erased packet. Here, the erasure may denote a loss or an error occurring in a predetermined position.
When a data packet ‘k’ is transmitted together with ‘(n−k)’ parity packets, a reception apparatus may restore a dropped packet even though up to a maximum of ‘(n−k)’ packets are dropped.
A serial number of the dropped packets may be counted by the reception apparatus by using an RTP protocol. The counting method of the serial number may restore at least one packet and thus, may be relatively effective compared to the RFC 2733
A method of restoring the at least one packet has been suggested by Wagner et al. (draft-ietf-avt-uxp-02.txt: an RTP payload format for erasure-resilient transmission of progressive multimedia streams,” March 2002), and has been standardized in the IETF.
The above described methods may be applied based on an assumption that a packet length is fixed. A packet length of a compressed audio may be fixed, whereas a packet length of a compressed video may be variable as illustrated FIG. 1.
FIG. 1 is a diagram illustrating a video where a packet length is variable between about 150 bytes and about 3000 bytes and an audio where a packet length is fixed as 112 bytes, in a related art.
Similar to moving picture services currently provided over the Internet, when a packet length to be transmitted is variable and does not allow a significant amount of delay, an improvement suitable for a stream where a packet length is variable while using the FEC scheme may be required.
FIG. 2 is a diagram illustrating a process where a variable-length packet is arranged based on a conventional FEC coding scheme.
In a current FEC coding scheme, since a parity packet is not generated with respect to the variable-length packet when the variable-length packet is transmitted, a padding process for generating packets having the same length, as illustrated in FIG. 2 may need to be performed. In this instance, a length of the parity packet may need to be matched with a packet having the greatest length within a related packet group, so that a waste of a bandwidth may be prevented. Also, a reception unit may not transmit an input packet until all of a packet ‘1’ to a packet ‘6’, that is, a related packet group, is inputted in order to verify a packet having the greatest length, which results in occurrence of delay.
To overcome this problem, an FEC scheme using a two-dimensional (2D) storage apparatus of FIG. 3 may be suggested.
FIG. 3 is a diagram illustrating a restoration process of a received packet in a variable-length packet reception method based on an FEC coding scheme using a conventional 2D storage apparatus.
However, in this case, a probability where a part where a restoration fails to be performed using the FEC scheme among related packet groups due to consecutively generated Internet characteristics when a packet loss occurs is generated may be relatively high.